
#ifndef EXAMPLE_OPENGL_PLOT_CONTROLLER_H
#define EXAMPLE_OPENGL_PLOT_CONTROLLER_H

#include <QtGui/QMainWindow>
#include "ui_Example_Opengl_Plot_Controller.h"
#include <sxQOpenGL_Viewport.h>
#include <sxOpenGL_Context.h>
#include <sxPlotController.h>

using Sx::OpenGL::Graphics::Contexts::OpenGL_Context;
using Sx::QtInterface::QOpenGL_Viewport;
using Sx::Interface::PlotController;

class Example_Opengl_Plot_Controller : public QMainWindow {
	Q_OBJECT

public:
	Example_Opengl_Plot_Controller(QWidget *parent = 0, Qt::WFlags flags = 0);
	~Example_Opengl_Plot_Controller();

	void resizeEvent(QResizeEvent* e);

private:
	Ui::Example_Opengl_Plot_ControllerClass ui;

	QOpenGL_Viewport* openglViewport;

	std::shared_ptr<OpenGL_Context> openglContext;
	std::shared_ptr<PlotController> plotController;
};

#endif
